Chengdu Yinchuan інформаційних технологій Co., Ltd.
Домашній>Продукти>Пакет протоколу ModBus
Пакет протоколу ModBus
Протокол Modbus - це універсальний протокол зв'язку, який широко використовується в сучасній галузі промислового управління.
Подробиці про продукт

Протокол ModBus

Протокол Modbus є загальним протоколом зв'язку, який широко використовується в сучасній галузі промислового управління. За допомогою цього протоколу контролери можуть спілкуватися один з одним або з іншими пристроями через мережу (наприклад, Ethernet). Протокол Modbus використовує технологію зв'язку з основного пристрою, тобто активно запитує і управляє з пристрою. Протокол, який використовується за керівництвом пристрою, зазвичай називається Modbus Master, а протокол, який використовується за керівництвом пристрою, називається Modbus Slave. Типове основне обладнання включає промислові контролери та промислові контролери; Типовий програмний контролер від пристроїв, таких як ПЛК тощо. Фізичний інтерфейс зв'язку Modbus може бути вибраний за допомогою серійних портів (включаючи RS232 і RS485), а також портів Ethernet. Їхнє спілкування дотримується наступного процесу:

• Головний пристрій надсилає запити з пристрою

● Аналізувати та обробляти запити з основного пристрою, а потім відправити результати до основного пристрою

● У разі виникнення будь-яких помилок з пристрою буде повернуто аномальний код


Інформація про програмне забезпечення для протоколу зв'язку ModBus

Програмне забезпечення протоколу зв'язку ModBus, запущене компанією Intel, використовується в основному в середовищі вбудованої материнської плати Intel ARM9, материнські плати Intel Industrial Control мають багатий рядовий порт, мережеві ресурси, універсальний інтерфейс GPIO тощо, а також потужну обробкову потужність. У поєднанні з програмним забезпеченням для протоколу зв'язку ModBus можна дуже зручно створити додаткову платформу для управління (Master) та пристрою (Slave), що відповідають специфікаціям зв'язку ModBus. Для того, щоб забезпечити основний спосіб зв'язку ModBus, пакет протоколу ModBus розділяється на дві окремі частини: програмне забезпечення для протоколу ModBus Master (скорочено modbus_Master) та програмне забезпечення для протоколу ModBus Device Side (скорочено modbus_Slave). В даний час програмне забезпечення для протоколу зв'язку ModBus працює в середовищі WinCE і доступне клієнтам у вигляді функцій C плюс статичної бібліотеки LIB. Основні характеристики:

Ідеально підходить для промислових застосувань в реальному часі

Можна підтримувати програми протоколу ModBus на базі серійних портів або програми протоколу ModBus на базі TCP

Режим передачі RTU

Підтримка більшості операцій з кодом функції Modbus, включаючи операції з бітами для входу катушки, дискретного перемикача та операції з байтами для реєстру

• Підтримка адреси мовлення

● Гнучке налаштування тайм-аут для зв'язку ModBus

● Можна отримати детальну інформацію про коди помилок протоколу передачі в зв'язку


Програмне забезпечення з протоколом ModBus


Функціональні коди, підтримувані програмним забезпеченням протоколу ModBus

Функціональний код

Опис

1

Читання однієї катушки

2

Читання дискретного входу

3

Читання декількох реєстрів

4

Читання реєстру входу

5

Написати одну катушку

6

Написати окремий реєстр

15

Написати кілька катушок

16

Запис декількох реєстрів

22

Блокувати запис реєстру

23

Реєстр читання/запису


Основні методи використання програмного забезпечення

Для зручності використання додатків і зберігання послідовної форми коду для різних засобів зв'язку, функції API в програмному забезпеченні протоколу ModBus (включаючи modbus_Master і modbus_Slave), що пропонуються компанією Ingron, можуть підтримувати одночасно протоколи Modbus на основі серійного порту та TCP. Додаток повинен лише розрізнятися різними параметрами при виклику функції ініціалізації. Інструкції про параметри, будь ласка, дивіться відповідні заголовкові файли: modbus_Master.h і modbus_Slave.h


Застосування modbus_master

Застосування як клієнтського режиму Modbus, в основному, підготовка запиту і відправка запиту на серверний пристрій і очікування відповіді сервера. При розробці таких додатків користувачі можуть звернутися до літератури стандарту Modbus та посібників з даними інтерфейсу зв'язку підозрюваного пристрою, безпосередньо викликаючи пакет modbus_Master, наданий компанією Ingron, який забезпечує відповідну функцію операційного API для завершення доступу та контролю серверного пристрою. При розробці таких додатків користувачеві потрібно лише включити modbus_master.h/modbus_master.lib.


Застосування modbus_slave

Як додаток моду сервера ModBus, в основному необхідно реалізувати аналіз і відповідь на повідомлення додатку ModBus, але це все ще лише частина всього ModBus комунікації, інша частина також необхідна для доступу до даних додатку. Для зручності використання клієнтами в пакеті modbus_Slave реалізовано автоматичне завантаження цих функцій користувацького інтерфейсу у вигляді вказівника функції, що пов'язує обробку даних користувацького додатку з відповіддю на повідомлення додатку ModBus. Користувачу потрібно лише визначити ці функції інтерфейсу відповідно до потреб для реалізації відповідних функцій, конкретне визначення кожної функції реалізується через спеціальний файл CPP: DataProvider.cpp.


Таким чином, розробка таких додатків повинна включати в себе дві частини вмісту, частиною є функція API, визначена modbus_slave.h/modbus_slave.lib; Інша частина - це функція інтерфейсу даних користувача, визначена в DataProvider.h / DataProvider.cpp, де функція інтерфейсу вимагає від користувача конкретної реалізації в DataProvider.cpp.


Для своєчасного реагування на повідомлення ModBus додатку необхідно зазначити, що під час програмування слід розробити нитку, яка неодноразово викликає виконавчу функцію modbus_Slave, яка використовує режим блокування.


Наприклад:

Запуск протоколу Modbus

hPort = mbusSlave_StartupServer(_T('*'), 1, 10000, mbusSlave_Interface );

або

hPort=mbusSlave_StartupServer(_T)"КОМ3:9600-8-1-0"), 1,10000, mbusSlave_Interface );


(2) виклик виконавчої функції Serverloop у відповідь на запит

в той час як( 1 )

{

//Викликає виконавчу функцію для аналізу та реагування на повідомлення ModBus.

результат = mbusSlave_ServerLoop( hPort );

    якщо(результат!=0)//Перевірити повернення помилки

{

      //Виправлення помилок: цей приклад - текстове повідомлення про отримання та друкування коду помилки

wcscpy( szText, mbusSlave_GetErrorText( результат ) );

i1 = wcslen( szText );

      якщо(i1>0)

{

wcstombs( strText, szText, i1 );

принт(код помилки: %s! n'Stretex);

}

}

}


Раніше програмне забезпечення для протоколу зв'язку ModBus було доступне клієнтам у вигляді функцій C плюс статичної бібліотеки (файли modbus.lib або libmodbus.a). Після зростання кількості клієнтів, компанія встановлює протокол зв'язку ModBus, зокрема програмне забезпечення протоколу управління (скорочено modbus_Master) у вигляді динамічної бібліотеки (файл modbus_Master.dll або libmbusmaster.so) в ядро вбудованої материнської плати компанії, щоб полегшити виклики клієнтських додатків. Заздалегідь встановлені плати з протоколом Modbus включають всі плати серії ESM (ESM6802, ESM6800, ESM335x, ESM928x тощо).


Пов'язані довідки


Застосування для збору кольця струму від 4 до 20 мА Протокол зв'язку Modbus під WinCE

Протокол Modbus для пристрою під WinCE Вбудована материнська плата Linux підтримує протокол Modbus

Програмне забезпечення Modbus для Linux ESM6802 підтримує розробку програм Qt MODBUS

Попередній встановлення протоколу Modbus на материнській платі
Інтернет-дослідження
  • Контакти
  • Компанія
  • Телефон
  • Електронна пошта
  • WeChat
  • Код перевірки
  • Вміст повідомлення

Успішна операція!

Успішна операція!

Успішна операція!